package com.yuandian.po;

import com.alibaba.fastjson.JSONObject;
import com.yuandian.bpm.common.data.datascope.BpmScope;
import lombok.Data;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * 说明：通用接口配置
 * @Author zfsn
 * @Date 2023/2/16 16:18
 */
@Data
public class CommonConf implements Serializable {

	public static CommonConf of(String detail) {
		return JSONObject.parseObject(detail, CommonConf.class);
	}

	/**
	 * bpm数据权限范围
	 */
	private BpmScope bpmScope;

	/**
	 * sql模板
	 */
	private String sqlTemplate;

	/**
	 * 通用查询请求参数校验规则
	 */
	private List<ValidationRule> validationRuleList;

	/**
	 * 日期字段格式化规则
	 */
	private Map<String, String> dateFormatRuleMap;

	/**
	 * 时间字段格式化规则
	 */
	private Map<String, String> timeFormatRuleMap;

	/**
	 * 字典字段映射规则(包含静态和动态)
	 */
	private Map<String, String> dictMappingRuleMap;

	/**
	 * 趋势图数据归并配置
	 */
	private MergeDataConfig trendMergeConfig;
}
